#include<iostream>
#include<pcap.h>
#include "ARPResponder.h"
#include "PacketListener.h"
#include<boost/thread/thread.hpp>
#include<netinet/if_ether.h>

using namespace boost;

using namespace std;

class ARPListener : public PacketListener {

  public:
	ARPListener(string* destination, string* device) : PacketListener(destination,device,new string("arp and dst host " + *destination)) {
		respond = new ARPResponder(device);
	};
	~ARPListener();
	void packetHandler(const u_char* packet, bpf_u_int32 len);
  private:
	ARPResponder* respond;
  protected:
	string* filter;
};
